home *** CD-ROM | disk | FTP | other *** search
- Path: walrus.megabaud.fi!not-for-mail
- From: petrin@walrus.megabaud.fi (Petri Nordlund)
- Newsgroups: comp.sys.amiga.networking
- Subject: Re: Announce: AWeb 1.0 released!
- Date: 30 Mar 1996 21:03:30 +0200
- Organization: Megabaud Oy,Helsinki,Finland
- Message-ID: <4jk0i2$ga2@walrus.megabaud.fi>
- NNTP-Posting-Host: walrus.megabaud.fi
-
- Jason S Birch (jasonb@cs.uwa.edu.au) writes:
- >mlelstv@serpens.rhein.de (Michael van Elst) writes:
- >>jasonb@cs.uwa.edu.au (Jason S Birch) writes:
- >>Of course you can drop the priority of all these tasks to the same
- >>level. But apparently this is not what happens with Executive.
- >
- >Executive dynamically adjusts the priorities every second so that, over
- >time, several CPU-intensive tasks (originally at the same priority)
- >will indeed get equal amounts of CPU time. This satisfies your
- >requirement for timeslicing, except the timeslices tend to be in
- >quantums of one second rather than four VBLs.
-
- This depends on the used scheduler. The standard-scheduler in
- Executive does this, but the better ones, especially the queues-
- scheduler works differently. It mimics BSD-style multilevel
- feedback queue scheduler, although tasks won't migrate between
- queues until priorities are recalculated every second. Let
- me quote from Executive documentation:
-
- ------
- This scheduler divides the dynamic priority range to eight priority
- levels and runs several tasks with the same priority. Tasks that use
- approximately the same amount of CPU time get same priority.
-
- Exec will Round-Robin tasks that have same priority. Each task is
- run for a time-slice called Quantum and then the next task gets
- chance to run. Exec normally uses a fixed Quantum value 4, but
- this scheduler adjusts the Quantum value for each task to maximize
- throughput of CPU-intensive tasks and to make interactive tasks
- more responsive. Here are the Quantum values given to tasks with
- different priorities:
-
- PRIORITY QUANTUM
- above dynamic range 4
- scheduled (inside dynamic range) 2-10
- below dynamic range 12
-
- For scheduled tasks the Quantum is the largest (10) when task's
- priority is close to dynamicmax priority (by default -100).
-
- This scheduler tries to eliminate "wobbling" priorities by not
- letting a task migrate upwards immediately. Task has to wait
- for one second before its priority can be raised.
-
- This is currently the best scheduler in Executive.
- ------
-
- When using this scheduler, tasks that use approximately the same
- amout of CPU time, will soon get the same priority and will be
- "round-robined" by Exec. For example, this Ps-client's output
- is sorted by task priority:
-
- PID PRI RPRI NICE TYPE STATE TIME IDLE CPU% NAME
- 295 -50 1 0 proc wait 0.801s 3m 0.00% CygnusEd
- 287 -50 1 0 proc wait 22.707s 6s 0.38% CygnusEd
- 1 -62 0 0 bcli wait 2.530s 4.94% [find]
- 14 -62 0 0 bcli wait 13.008s 7.09% [find]
- 10 -75 0 0 bcli ready 4.592s 13.91% [lha]
- 15 -75 0 0 bcli ready 22.401s 20.26% [lha]
- --
- __
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Petri Nordlund __/// petrin@megabaud.fi
- ---------------------------------\XX/----------------------------------
-